package com.bmf.module.examination.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.bmf.core.result.PageResponse;
import com.bmf.module.examination.entity.SelectionStrategyQuestion;
import com.bmf.module.examination.vo.SelectionStrategyQuestionCreateVo;
import com.bmf.module.examination.vo.SelectionStrategyQuestionPageVo;
import com.bmf.module.examination.vo.SelectionStrategyQuestionResultVo;

import java.util.List;
import java.util.Map;


/**
 * (SelectionStrategyQuestion)表服务接口
 *
 * @author makejava
 * @since 2022-12-02 10:59:52
 */
public interface SelectionStrategyQuestionService extends IService<SelectionStrategyQuestion> {

    void insert(List<SelectionStrategyQuestionCreateVo> selectionStrategyQuestionCreateVos);

    PageResponse<SelectionStrategyQuestionResultVo> selectAll(SelectionStrategyQuestionPageVo selectionStrategyQuestionPageVo);

    void delete(List<Long> ids);

    List<SelectionStrategyQuestion> getBySelectionStrategyId(Integer selectionStrategyId);

    Map<Integer, Map<Integer, Long>> getCountMapByExaminationId(Integer examinationId);

    void removeBySelectionStrategyIds(List<Long> ids);

    void deleteBySmallQuestionIds(List<Integer> ids);

    void deleteByExaminationIds(List<Integer> ids);
}
